package aiku.numericalcontroloa.Model.Entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;

import lombok.Data;

/**
 * 
 * @TableName die_order
 */
@TableName(value = "die_order")
@Data
public class DieOrderJoin extends BaseEntity implements Serializable {
    /**
     * 客虎名称
     */
    @TableField(value="name_id")
    private String nameId;

    /**
     * 版号
     */
    @TableField(value="version_number")
    private String versionNumber;

    /**
     * 产品名称
     */
    @TableField(value="product_name")
    private String productName;

    /**
     * 价格
     */
    @TableField(value="price")
    private BigDecimal price;

    /**
     * 是否发货
     */
    @TableField(value="is_send")
    private Integer isSend;

    /**
     * 交货日期
     */
    @TableField(value="delivery_time")
    private String deliveryTime;

    /**
     * 绘图
     */
    @TableField(value="st_one")
    private String stOne;

    /**
     * 切割
     */
    @TableField(value="st_two")
    private String stTwo;

    /**
     * 装刀
     */
    @TableField(value="st_three")
    private String stThree;

    /**
     * 装线
     */
    @TableField(value="st_four")
    private String stFour;

    /**
     * 打包
     */
    @TableField(value="st_five")
    private String stFive;

    /**
     * 贴海绵
     */
    @TableField(value="st_six")
    private String stSix;

    /**
     * 附加费
     */
    @TableField(value="sur_price")
    private String surPrice;

    /**
     * 负责人
     */
    @TableField(value="head")
    private String head;

    /**
     * 处罚情况
     */
    @TableField(value="trigger_situation")
    private String triggerSituation;

    /**
     * 出货单
     */
    @TableField(value="delivery_id")
    private String deliveryId;

    /**
     * 处罚情况
     */
    @TableField(value="punishment")
    private String punishment;

    @TableField(value="complete_order")
    private String completeOrder;

    @TableField(value="urgent")
    private Integer urgent;

    @TableField(value = "receivables")
    private Integer receivables;

    /**
     * 客户昵称
     */
    @TableField(value = "custom_name")
    private String customName;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        DieOrder other = (DieOrder) that;
        return (this.getId() == null ? other.getId() == null
                : this.getId().equals(other.getId()))
                && (this.getNameId() == null ? other.getNameId() == null : this.getNameId().equals(other.getNameId()))
                && (this.getVersionNumber() == null ? other.getVersionNumber() == null
                        : this.getVersionNumber().equals(other.getVersionNumber()))
                && (this.getProductName() == null ? other.getProductName() == null
                        : this.getProductName().equals(other.getProductName()))
                && (this.getPrice() == null ? other.getPrice() == null : this.getPrice().equals(other.getPrice()))
                && (this.getIsSend() == null ? other.getIsSend() == null : this.getIsSend().equals(other.getIsSend()))
                && (this.getDeliveryTime() == null ? other.getDeliveryTime() == null
                        : this.getDeliveryTime().equals(other.getDeliveryTime()))
                && (this.getStOne() == null ? other.getStOne() == null : this.getStOne().equals(other.getStOne()))
                && (this.getStTwo() == null ? other.getStTwo() == null : this.getStTwo().equals(other.getStTwo()))
                && (this.getStThree() == null ? other.getStThree() == null
                        : this.getStThree().equals(other.getStThree()))
                && (this.getStFour() == null ? other.getStFour() == null : this.getStFour().equals(other.getStFour()))
                && (this.getStFive() == null ? other.getStFive() == null : this.getStFive().equals(other.getStFive()))
                && (this.getSurPrice() == null ? other.getSurPrice() == null
                        : this.getSurPrice().equals(other.getSurPrice()))
                && (this.getHead() == null ? other.getHead() == null : this.getHead().equals(other.getHead()))
                && (this.getTriggerSituation() == null ? other.getTriggerSituation() == null
                        : this.getTriggerSituation().equals(other.getTriggerSituation()))
                && (this.getDeliveryId() == null ? other.getDeliveryId() == null
                        : this.getDeliveryId().equals(other.getDeliveryId()))
                && (this.getPunishment() == null ? other.getPunishment() == null
                        : this.getPunishment().equals(other.getPunishment()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getNameId() == null) ? 0 : getNameId().hashCode());
        result = prime * result + ((getVersionNumber() == null) ? 0 : getVersionNumber().hashCode());
        result = prime * result + ((getProductName() == null) ? 0 : getProductName().hashCode());
        result = prime * result + ((getPrice() == null) ? 0 : getPrice().hashCode());
        result = prime * result + ((getIsSend() == null) ? 0 : getIsSend().hashCode());
        result = prime * result + ((getDeliveryTime() == null) ? 0 : getDeliveryTime().hashCode());
        result = prime * result + ((getStOne() == null) ? 0 : getStOne().hashCode());
        result = prime * result + ((getStTwo() == null) ? 0 : getStTwo().hashCode());
        result = prime * result + ((getStThree() == null) ? 0 : getStThree().hashCode());
        result = prime * result + ((getStFour() == null) ? 0 : getStFour().hashCode());
        result = prime * result + ((getStFive() == null) ? 0 : getStFive().hashCode());
        result = prime * result + ((getSurPrice() == null) ? 0 : getSurPrice().hashCode());
        result = prime * result + ((getHead() == null) ? 0 : getHead().hashCode());
        result = prime * result + ((getTriggerSituation() == null) ? 0 : getTriggerSituation().hashCode());
        result = prime * result + ((getDeliveryId() == null) ? 0 : getDeliveryId().hashCode());
        result = prime * result + ((getPunishment() == null) ? 0 : getPunishment().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(getId());
        sb.append(", nameId=").append(nameId);
        sb.append(", versionNumber=").append(versionNumber);
        sb.append(", productName=").append(productName);
        sb.append(", price=").append(price);
        sb.append(", isSend=").append(isSend);
        sb.append(", deliveryTime=").append(deliveryTime);
        sb.append(", stOne=").append(stOne);
        sb.append(", stTwo=").append(stTwo);
        sb.append(", stThree=").append(stThree);
        sb.append(", stFour=").append(stFour);
        sb.append(", stFive=").append(stFive);
        sb.append(", surPrice=").append(surPrice);
        sb.append(", head=").append(head);
        sb.append(", triggerSituation=").append(triggerSituation);
        sb.append(", deliveryId=").append(deliveryId);
        sb.append(", punishment=").append(punishment);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}